package com.chixing.day03_oop.work;

import java.util.Scanner;

public class Work4_1 {
    /**
     * 牛牛选择了一个正整数X,然后把它写在黑板上。然后每一天他会擦掉当前数字的最后一位,直到他擦掉所有数位。 在整个过程中,牛牛会把所有在黑板上出现过的数字记录下来,然后求出他们的总和sum.
     *  例如X = 509, 在黑板上出现过的数字依次是509, 50, 5, 他们的和就是564.
     * 牛牛现在给出一个sum,牛牛想让你求出一个正整数X经过上述过程的结果是sum.
     *
     */
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        System.out.print("请输入数值: ");
        int scInt = sc.nextInt();
        //sum:给一个初始值
        //temp:备份scInt=100
        int sum=0,temp=scInt;
        while (sum<=temp){
            //mid作为最终需要找的数值
            int mid=sum+((temp-sum)/2);
            int x=MidSum(mid);
            if(x==scInt) {
                System.out.println(mid);
                break;
            }
            //不相等时判断数据大小，从而确定下一次从左边找还有从右边找
            else if(x<scInt)
                sum=mid+1;
            else
                temp=mid-1;
        }
    }

    //100=>10=>1=111
    public static int MidSum(int num){
        int sum=0;
        while (num!=0) {
            sum+=num;
            num=num/10;
        }
        return sum;
    }

}
